주식 기술지표 산출법 정리

MA, RSI, VWAP, 볼린저밴드, 이동평균선, 모멘텀, 변동성 등

Posted by 옐란 on 2021-04-25
  • 주식 투자관련 기술지표 정의/산출법(계산식)들을 정리해 본다.
  • 참고도서: 퀀트 전략을 위한 인공지능 트레이닝
  • 진척률(2021.04.25): 10%

목차1 (주식 투자 지표들)

1
2
3
4
5
6
7
8
9
10
11
12
1.MA(이동평균션) : Standard deviation rolling average  
2.RSI(상대적 강대지수):
3.VWAP(거래량 가중평균가):
4.BOLL(볼린저 밴드) : Bollinger Band
5.MACD : Moving Average Convergence/Divergence
6.CCI : Commodity Channel Index # Momentum(모멘텀) Indicators
7.ATR(변동성) : Average True Range
8.MTM1
9.MTM3
10.ROC : Rate of change : ((price/prevPrice)-1)*100
11.WPR : william percent range (Williams' %R)
12. 마법공식(PER, ROA):

목차2 (투자 성과 분석 지표)

1
2
3
4
1.CACR(연평균 복리 수익률)
2.MDD(최대낙폭)
3.VOL(변동성)
4.Sharp지수(샤프지수)

이동평균선

Pandas 구현

  • 들쑥날쑥한 주가의 흐름을 몇일간의 평균적인 값으로 나타내는 지표를 이동평균선이라고 한다.
  • 이동평균 구현 : rolling window를 정하고 평균을 계산
    1
    2
    3
    4
    5
    price_df['center'] = price_df['Adj Close'].rolling(20).mean() # 이동평균선을 구한다.

    import matplotlib.pyplot as plt
    plt.plot(sample.index, sample['Adj Close'], label="Adj Close")
    plt.plot(sample.index, sample['center'], label="center")

ta-lib로 적용

  • 1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    # colab 설치
    # (2020) https://stackoverflow.com/questions/49648391/how-to-install-ta-lib-in-google-colab
    url = 'https://launchpad.net/~mario-mariomedina/+archive/ubuntu/talib/+files'
    !wget $url/libta-lib0_0.4.0-oneiric1_amd64.deb -qO libta.deb
    !wget $url/ta-lib0-dev_0.4.0-oneiric1_amd64.deb -qO ta.deb
    !dpkg -i libta.deb ta.deb
    !pip install ta-lib
    import talib

    sample['MA20'] = talib.SMA(sample['Adj Close'],timeperiod=20)

Sample